
package com.insigma.business.qrcode.soldier._consumer;



import com.insigma.business.qrcode.common.template.BasePagingResponse;
import com.insigma.business.qrcode.common.vo.BaseDeleteRequest;
import com.insigma.business.qrcode.common.vo.BaseResponse;
import com.insigma.business.qrcode.soldier.dto.*;
import com.insigma.business.qrcode.soldier.request.BaseGetRequest;

import java.util.List;
import java.util.Map;


public interface CompanyConsumer {

   
    BasePagingResponse<List<CompanyDTO>> searchCompany(final CompanySearchRequest searchRequest);

    BaseResponse<List<CompanyPositNoFairIdGroupDTO>> getCompanyPositNoFairId(final String fairId);

    BaseResponse<CompanyDTO> getCompany(final BaseGetRequest baseGetRequest);

   
    BaseResponse<String> insertCompany(final CompanyInsertRequest insertRequest);

   
    BaseResponse<Integer> updateCompany(final CompanyUpdateRequest updateRequest);

   
    BaseResponse<Integer> deleteCompany(final BaseDeleteRequest deleteRequest);

    
    BaseResponse<CompanyDTO> getCompanyByUserId(String userId);

    
    BaseResponse<CompanyDTO> getCompanyByEmployeeId(final String employeeId);

    BasePagingResponse<List<CompanyDTO>> searchCompanyOfQualification(CompanySearchRequest companySearchRequest);

    
    BaseResponse<Map<String,String>> getCompanyId2NameMapByIdList(final List<String> idList);

    BaseResponse<Integer> updateCompanyExtraInfo(CompanyUpdateRequest updateRequest);

    
    BaseResponse<CompanyDTO> getCompanyWithJobPosition(final BaseGetRequest baseGetRequest);

    BaseResponse<Integer> importCompany(SimpleApiRequest request);

    BaseResponse<CompanyTrainingStatsDTO> statsCompanyTraining(CompanySearchRequest request);
}
